fileCreator: OSType; { Creator of this enclosure. }
fileType: OSType; { File Type of this enclosure. }
END;
SMPLetterPBPtr = ^SMPLetterPB;
SMPLetterPB = RECORD
result: OSErr; { result of operation }
subject: RStringPtr; { RString }
senderIdentity: AuthIdentity; { Letter is sent from this Identity }
toList: SMPRecipientDescriptorPtr; { Pointer to linked list }
ccList: SMPRecipientDescriptorPtr; { Pointer to linked list }
bccList: SMPRecipientDescriptorPtr; { Pointer to linked list }
script: ScriptCode; { Identifier for language }
textSize: Size; { length of body data }
textBuffer: Ptr; { body of the letter }
sendAs: SInt8; { Send as Letter,Enclosure,Image }
padByte: SInt8;
enclosures: SMPEnclosureDescriptorPtr; { files to be enclosed }
drawImageProc: SMPDrawImageUPP; { For imaging }
imageRefCon: LONGINT; { For imaging }
supportsColor: BOOLEAN; { For imaging - set to true if you application supports color imaging }
filler1: BOOLEAN;
END;
CONST
kSMPAppMustHandleEventBit = 0;
kSMPAppShouldIgnoreEventBit = 1;
kSMPContractedBit = 2;
kSMPExpandedBit = 3;
kSMPMailerBecomesTargetBit = 4;
kSMPAppBecomesTargetBit = 5;
kSMPCursorOverMailerBit = 6;
kSMPCreateCopyWindowBit = 7;
kSMPDisposeCopyWindowBit = 8;
{ Values of SMPMailerResult }
kSMPAppMustHandleEventMask = $01;
kSMPAppShouldIgnoreEventMask = $02;
kSMPContractedMask = $04;
kSMPExpandedMask = $08;
kSMPMailerBecomesTargetMask = $10;
kSMPAppBecomesTargetMask = $20;
kSMPCursorOverMailerMask = $40;
kSMPCreateCopyWindowMask = $80;
kSMPDisposeCopyWindowMask = $0100;
TYPE
SMPMailerResult = LONGINT;
{ Values of SMPMailerComponent }
CONST
kSMPOther = -1;
kSMPFrom = 32;
kSMPTo = 20;
kSMPRegarding = 22;
kSMPSendDateTime = 29;
kSMPAttachments = 26;
kSMPAddressOMatic = 16;
TYPE
SMPMailerComponent = LONGINT;
CONST
kSMPToAddress = 13;
kSMPCCAddress = 14;
kSMPBCCAddress = 15;
TYPE
SMPAddressType = MailAttributeID;
CONST
kSMPUndoCommand = 0;
kSMPCutCommand = 1;
kSMPCopyCommand = 2;
kSMPPasteCommand = 3;
kSMPClearCommand = 4;
kSMPSelectAllCommand = 5;
TYPE
SMPEditCommand = INTEGER;
CONST
kSMPUndoDisabled = 0;
kSMPAppMayUndo = 1;
kSMPMailerUndo = 2;
TYPE
SMPUndoState = INTEGER;
{
SMPSendFormatMask:
Bitfield indicating which combinations of formats are included in,
should be included or, or can be included in a letter.
}
CONST
kSMPNativeBit = 0;
kSMPImageBit = 1;
kSMPStandardInterchangeBit = 2;
{ Values of SMPSendFormatMask }
kSMPNativeMask = $01;
kSMPImageMask = $02;
kSMPStandardInterchangeMask = $04;
TYPE
SMPSendFormatMask = LONGINT;
{
Pseudo-events passed to the clients filter proc for initialization and cleanup.
}
CONST
kSMPSendOptionsStart = -1;
kSMPSendOptionsEnd = -2;
{
SMPSendFormatMask:
Structure describing the format of a letter. If kSMPNativeMask bit is set, the whichNativeFormat field indicates which of the client-defined formats to use.
}
TYPE
SMPSendFormatPtr = ^SMPSendFormat;
SMPSendFormat = RECORD
whichFormats: SMPSendFormatMask;
whichNativeFormat: INTEGER; { 0 based }
END;
SMPLetterInfoPtr = ^SMPLetterInfo;
SMPLetterInfo = RECORD
letterCreator: OSType;
letterType: OSType;
subject: RString32;
sender: RString32;
END;
CONST
kSMPSave = 0;
kSMPSaveAs = 1;
kSMPSaveACopy = 2;
TYPE
SMPSaveType = INTEGER;
FrontWindowProcPtr = ProcPtr; { FUNCTION FrontWindow(clientData: LONGINT): WindowPtr; }
FUNCTION SMPReadContent(window: WindowPtr; segmentTypeMask: MailSegmentMask; buffer: UNIV Ptr; bufferSize: LONGINT; VAR dataSize: LONGINT; textScrap: StScrpPtr; VAR script: ScriptCode; VAR segmentType: MailSegmentType; VAR endOfScript: BOOLEAN; VAR endOfSegment: BOOLEAN; VAR endOfContent: BOOLEAN; VAR segmentLength: LONGINT; VAR segmentID: LONGINT): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0019, $127B, $AA5D;
{$ENDC}
FUNCTION SMPGetFontNameFromLetter(window: WindowPtr; fontNum: INTEGER; VAR fontName: Str255; doneWithFontTable: BOOLEAN): OSErr;
FUNCTION SMPReadBlock(window: WindowPtr; {CONST}VAR blockType: OCECreatorType; blockIndex: INTEGER; buffer: UNIV Ptr; bufferSize: LONGINT; dataOffset: LONGINT; VAR dataSize: LONGINT; VAR endOfBlock: BOOLEAN; VAR remaining: LONGINT): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0011, $1280, $AA5D;
{$ENDC}
FUNCTION SMPEnumerateBlocks(window: WindowPtr; startIndex: INTEGER; buffer: UNIV Ptr; bufferSize: LONGINT; VAR dataSize: LONGINT; VAR nextIndex: INTEGER; VAR more: BOOLEAN): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $000D, $1281, $AA5D;
{$ENDC}
FUNCTION SMPDrawMailer(window: WindowPtr): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0002, $1269, $AA5D;
{$ENDC}
FUNCTION SMPSetSubject(window: WindowPtr; {CONST}VAR text: RString): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0004, $126B, $AA5D;
{$ENDC}
FUNCTION SMPSetFromIdentity(window: WindowPtr; from: AuthIdentity): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0004, $126C, $AA5D;
{$ENDC}
FUNCTION SMPAddAddress(window: WindowPtr; addrType: SMPAddressType; VAR address: OCEPackedRecipient): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0005, $126D, $AA5D;
{$ENDC}
FUNCTION SMPAddAttachment(window: WindowPtr; {CONST}VAR attachment: FSSpec): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0004, $126E, $AA5D;
{$ENDC}
FUNCTION SMPAttachDialog(window: WindowPtr): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0002, $1276, $AA5D;
{$ENDC}
FUNCTION SMPExpandOrContract(window: WindowPtr; expand: BOOLEAN): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0003, $1272, $AA5D;
{$ENDC}
FUNCTION SMPMoveMailer(window: WindowPtr; dh: INTEGER; dv: INTEGER): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0004, $126A, $AA5D;
{$ENDC}
FUNCTION SMPBecomeTarget(window: WindowPtr; becomeTarget: BOOLEAN; whichField: SMPMailerComponent): OSErr;
{$IFC NOT GENERATINGCFM}
INLINE $203C, $0005, $1273, $AA5D;
{$ENDC}
FUNCTION SMPGetComponentSize(window: WindowPtr; whichMailer: INTEGER; whichField: SMPMailerComponent; VAR size: INTEGER): OSErr;